package com.ktgj.customer.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ktgj.customer.domain.vo.GuaranteeCaseParameterVo;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ktgj.common.core.annotation.Excel;
import com.ktgj.common.core.web.domain.BaseEntity;

/**
 * 渎失职工单对象 case_malfeasance
 * 
 * @author ruoyi
 * @date 2022-05-25
 */
public class CaseMalfeasance extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /**
     * 渎失职工单主键
     */
    private Long caseMalfeasanceId;

    private Long caseId;

    /**
     * 渎失职类型
     */
    @Excel(name = "渎失职类型")
    private String malfeasancetype;

    /**
     * 业务类型枚举
     */
    @Excel(name = "业务类型枚举")
    private String businessType;

    /**
     * 订单ID
     */
    @Excel(name = "订单ID")
    private Long orderId;

    /**
     * 渎失职工单内容
     */
    @Excel(name = "渎失职工单内容")
    private String malfeasanceContent;

    /**
     * 员工承担金额
     */
    @Excel(name = "员工承担金额")
    private BigDecimal malfeasanceMoney;

    /**
     * 是否有效
     */
    @Excel(name = "是否有效")
    private String isvalid;

    /**
     * 创建时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date createDate;

    /**
     * 员工ID
     */
    @Excel(name = "员工ID")
    private Long employeeId;

    /**
     * 公司承担金额
     */
    @Excel(name = "公司承担金额")
    private BigDecimal companyMoney;

    /**
     * 现金
     */
    @Excel(name = "现金")
    private BigDecimal cash;

    /**
     * 返卡现金
     */
    @Excel(name = "返卡现金")
    private BigDecimal backcardMoney;

    /**
     * 处理结果
     */
    @Excel(name = "处理结果")
    private String resolutionDetails;

    /**
     * 渎失职结果类型(服务赔偿，现金赔偿，退卡)
     */
    @Excel(name = "渎失职结果类型(服务赔偿，现金赔偿，退卡)")
    private String malfeasanceResult;

    /**
     * 被投诉员工人ID
     */
    @Excel(name = "被投诉员工人ID")
    private Long complaintEmployeeid;

    /**
     * 投诉次数
     */
    @Excel(name = "投诉次数")
    private Long count;

    /**
     * 涉及部门
     */
    @Excel(name = "涉及部门")
    private Long department;

    /**
     * 责任部门是否确认 枚举  true false
     */
    @Excel(name = "责任部门是否确认 枚举  true false")
    private String departmentConfirm;

    /**
     * 涉及投诉点内容
     */
    @Excel(name = "涉及投诉点内容")
    private String complaintPoint;

    /**
     * 是否撤诉 枚举  true false
     */
    @Excel(name = "是否撤诉 枚举  true false")
    private String cancel;

    /**
     * 是否构成处罚  枚举  true false
     */
    @Excel(name = "是否构成处罚  枚举  true false")
    private String penalty;

    //证据文件路径
    private String fileUrl;
    //是否连带上级
    private String superior;
    //扣除员工绩效
    private String takeoffEmployee;
    //扣除上级绩效
    private String takeoffSuperior;

    public String getTakeoffEmployee()
    {
        return takeoffEmployee;
    }

    public void setTakeoffEmployee(String takeoffEmployee)
    {
        this.takeoffEmployee = takeoffEmployee;
    }

    public String getTakeoffSuperior()
    {
        return takeoffSuperior;
    }

    public void setTakeoffSuperior(String takeoffSuperior)
    {
        this.takeoffSuperior = takeoffSuperior;
    }

    public String getSuperior()
    {
        return superior;
    }

    public void setSuperior(String superior)
    {
        this.superior = superior;
    }

    public String getFileUrl()
    {
        return fileUrl;
    }

    public void setFileUrl(String fileUrl)
    {
        this.fileUrl = fileUrl;
    }

    private GuaranteeCaseParameterVo guaranteeCase;

    public Long getComplaintEmployeeid()
    {
        return complaintEmployeeid;
    }

    public void setComplaintEmployeeid(Long complaintEmployeeid)
    {
        this.complaintEmployeeid = complaintEmployeeid;
    }

    public Long getCount()
    {
        return count;
    }

    public void setCount(Long count)
    {
        this.count = count;
    }

    public Long getDepartment()
    {
        return department;
    }

    public void setDepartment(Long department)
    {
        this.department = department;
    }

    public String getDepartmentConfirm()
    {
        return departmentConfirm;
    }

    public void setDepartmentConfirm(String departmentConfirm)
    {
        this.departmentConfirm = departmentConfirm;
    }

    public String getComplaintPoint()
    {
        return complaintPoint;
    }

    public void setComplaintPoint(String complaintPoint)
    {
        this.complaintPoint = complaintPoint;
    }

    public String getCancel()
    {
        return cancel;
    }

    public void setCancel(String cancel)
    {
        this.cancel = cancel;
    }

    public String getPenalty()
    {
        return penalty;
    }

    public void setPenalty(String penalty)
    {
        this.penalty = penalty;
    }

    public GuaranteeCaseParameterVo getGuaranteeCase()
    {
        return guaranteeCase;
    }

    public void setGuaranteeCase(GuaranteeCaseParameterVo guaranteeCase)
    {
        this.guaranteeCase = guaranteeCase;
    }

    public Long getCaseId()
    {
        return caseId;
    }

    public void setCaseId(Long caseId)
    {
        this.caseId = caseId;
    }

    public void setCaseMalfeasanceId(Long caseMalfeasanceId)
    {
        this.caseMalfeasanceId = caseMalfeasanceId;
    }

    public Long getCaseMalfeasanceId()
    {
        return caseMalfeasanceId;
    }

    public void setMalfeasancetype(String malfeasancetype)
    {
        this.malfeasancetype = malfeasancetype;
    }

    public String getMalfeasancetype()
    {
        return malfeasancetype;
    }

    public void setBusinessType(String businessType)
    {
        this.businessType = businessType;
    }

    public String getBusinessType()
    {
        return businessType;
    }

    public void setOrderId(Long orderId)
    {
        this.orderId = orderId;
    }

    public Long getOrderId()
    {
        return orderId;
    }

    public void setMalfeasanceContent(String malfeasanceContent)
    {
        this.malfeasanceContent = malfeasanceContent;
    }

    public String getMalfeasanceContent()
    {
        return malfeasanceContent;
    }

    public void setMalfeasanceMoney(BigDecimal malfeasanceMoney)
    {
        this.malfeasanceMoney = malfeasanceMoney;
    }

    public BigDecimal getMalfeasanceMoney()
    {
        return malfeasanceMoney;
    }

    public void setIsvalid(String isvalid)
    {
        this.isvalid = isvalid;
    }

    public String getIsvalid()
    {
        return isvalid;
    }

    public void setCreateDate(Date createDate)
    {
        this.createDate = createDate;
    }

    public Date getCreateDate()
    {
        return createDate;
    }

    public void setEmployeeId(Long employeeId)
    {
        this.employeeId = employeeId;
    }

    public Long getEmployeeId()
    {
        return employeeId;
    }

    public void setCompanyMoney(BigDecimal companyMoney)
    {
        this.companyMoney = companyMoney;
    }

    public BigDecimal getCompanyMoney()
    {
        return companyMoney;
    }

    public void setCash(BigDecimal cash)
    {
        this.cash = cash;
    }

    public BigDecimal getCash()
    {
        return cash;
    }

    public void setBackcardMoney(BigDecimal backcardMoney)
    {
        this.backcardMoney = backcardMoney;
    }

    public BigDecimal getBackcardMoney()
    {
        return backcardMoney;
    }

    public void setResolutionDetails(String resolutionDetails)
    {
        this.resolutionDetails = resolutionDetails;
    }

    public String getResolutionDetails()
    {
        return resolutionDetails;
    }

    public void setMalfeasanceResult(String malfeasanceResult)
    {
        this.malfeasanceResult = malfeasanceResult;
    }

    public String getMalfeasanceResult()
    {
        return malfeasanceResult;
    }

    @Override
    public String toString()
    {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
                .append("caseMalfeasanceId", getCaseMalfeasanceId())
                .append("malfeasancetype", getMalfeasancetype())
                .append("businessType", getBusinessType())
                .append("orderId", getOrderId())
                .append("malfeasanceContent", getMalfeasanceContent())
                .append("malfeasanceMoney", getMalfeasanceMoney())
                .append("isvalid", getIsvalid())
                .append("createDate", getCreateDate())
                .append("employeeId", getEmployeeId())
                .append("companyMoney", getCompanyMoney())
                .append("cash", getCash())
                .append("backcardMoney", getBackcardMoney())
                .append("resolutionDetails", getResolutionDetails())
                .append("malfeasanceResult", getMalfeasanceResult())
                .append("complaintEmployeeid", getComplaintEmployeeid())
                .append("count", getCount())
                .append("department", getDepartment())
                .append("departmentConfirm", getDepartmentConfirm())
                .append("complaintPoint", getComplaintPoint())
                .append("cancel", getCancel())
                .append("penalty", getPenalty())
                .toString();
    }
}
